package com.asp.aspchain.core.model;

import com.baomidou.mybatisplus.activerecord.Model;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;
import org.apache.commons.lang3.builder.ReflectionToStringBuilder;

import java.io.Serializable;
import java.math.BigInteger;
import java.util.Date;

/**
 * 
 *
 * @author aspire
 * @Date 2018-10-24 11:07
 */
@TableName("t_abc_toc_account")
public class TocAccountModel extends Model<TocAccountModel> {

	private static final long serialVersionUID = 1L;

	/**
	 * 区块链分配的账户
	 * 
	 */
	@TableId(value = "accountid", type = IdType.INPUT)
	private String accountid;
	/**
	 * appid
	 * 
	 */
	private Integer appid;
	/**
	 * 创建时间
	 * 
	 */
	private Date createtime;
	/**
	 * 更新时间
	 * 
	 */
	private Date updatetime;
	/**
	 * 00 eoa账户 01 coa账户
	 * 
	 */
	private String fromtype;
	/**
	 * token余额类型 eth(以太币） sxt（碎星TOKEN）sxt(黑转TOKEN）
	 * 
	 */
	private String tokentype;
	/**
	 * Token值（账户余额，默认为0）
	 * 
	 */
	private BigInteger tokenvalue;
	/**
	 * 1 身份证 2 护照 3 军官证 4 手机号）
	 * 
	 */
	private String idtype;
	/**
	 * 证件号或者手机号
	 * 
	 */
	private String identityId;
	/**
	 * 手机号
	 * 
	 */
	private String phone;
	/**
	 * 00 解锁，01 锁定。
	 * 
	 */
	private String status;
	/**
	 * 资产托管中心账户
	 * 
	 */
	private String saccountid;
	/**
	 * IPFS ，自建的IPFS存储.SWARM，自建的SWARM 存储.FASTDFS 自建的FASTDFS OTHER 其他第三方的存储
	 * 
	 */
	private String storetype;

	/**
	 * 密码
	 *
	 */
	private String password;

	/**
	 * 获取: 区块链分配的账户
	 * 
	 */
	public String getAccountid() {
		return accountid;
	}

	/**
	 * 设置: 区块链分配的账户
	 * 
	 */
	public void setAccountid(String accountid) {
		this.accountid = accountid;
	}

	/**
	 * 获取: appid
	 * 
	 */
	public Integer getAppid() {
		return appid;
	}

	/**
	 * 设置: appid
	 * 
	 */
	public void setAppid(Integer appid) {
		this.appid = appid;
	}

	/**
	 * 获取: 创建时间
	 * 
	 */
	public Date getCreatetime() {
		return createtime;
	}

	/**
	 * 设置: 创建时间
	 * 
	 */
	public void setCreatetime(Date createtime) {
		this.createtime = createtime;
	}

	/**
	 * 获取: 更新时间
	 * 
	 */
	public Date getUpdatetime() {
		return updatetime;
	}

	/**
	 * 设置: 更新时间
	 * 
	 */
	public void setUpdatetime(Date updatetime) {
		this.updatetime = updatetime;
	}

	/**
	 * 获取: 00 eoa账户 01 coa账户
	 * 
	 */
	public String getFromtype() {
		return fromtype;
	}

	/**
	 * 设置: 00 eoa账户 01 coa账户
	 * 
	 */
	public void setFromtype(String fromtype) {
		this.fromtype = fromtype;
	}

	/**
	 * 获取: token余额类型 eth(以太币） sxt（碎星TOKEN）sxt(黑转TOKEN）
	 * 
	 */
	public String getTokentype() {
		return tokentype;
	}

	/**
	 * 设置: token余额类型 eth(以太币） sxt（碎星TOKEN）sxt(黑转TOKEN）
	 * 
	 */
	public void setTokentype(String tokentype) {
		this.tokentype = tokentype;
	}

	/**
	 * 获取: Token值（账户余额，默认为0）
	 * 
	 */
	public BigInteger getTokenvalue() {
		return tokenvalue;
	}

	/**
	 * 设置: Token值（账户余额，默认为0）
	 * 
	 */
	public void setTokenvalue(BigInteger tokenvalue) {
		this.tokenvalue = tokenvalue;
	}

	/**
	 * 获取: 1 身份证 2 护照 3 军官证 4 手机号）
	 * 
	 */
	public String getIdtype() {
		return idtype;
	}

	/**
	 * 设置: 1 身份证 2 护照 3 军官证 4 手机号）
	 * 
	 */
	public void setIdtype(String idtype) {
		this.idtype = idtype;
	}

	/**
	 * 获取: 证件号或者手机号
	 * 
	 */
	public String getIdentityId() {
		return identityId;
	}

	/**
	 * 设置: 证件号或者手机号
	 * 
	 */
	public void setIdentityId(String identityId) {
		this.identityId = identityId;
	}

	/**
	 * 获取: 手机号
	 * 
	 */
	public String getPhone() {
		return phone;
	}

	/**
	 * 设置: 手机号
	 * 
	 */
	public void setPhone(String phone) {
		this.phone = phone;
	}

	/**
	 * 获取: 00 解锁，01 锁定。
	 * 
	 */
	public String getStatus() {
		return status;
	}

	/**
	 * 设置: 00 解锁，01 锁定。
	 * 
	 */
	public void setStatus(String status) {
		this.status = status;
	}

	/**
	 * 获取: 资产托管中心账户
	 * 
	 */
	public String getSaccountid() {
		return saccountid;
	}

	/**
	 * 设置: 资产托管中心账户
	 * 
	 */
	public void setSaccountid(String saccountid) {
		this.saccountid = saccountid;
	}

	/**
	 * 获取: IPFS ，自建的IPFS存储.SWARM，自建的SWARM 存储.FASTDFS 自建的FASTDFS OTHER 其他第三方的存储
	 * 
	 */
	public String getStoretype() {
		return storetype;
	}

	/**
	 * 设置: IPFS ，自建的IPFS存储.SWARM，自建的SWARM 存储.FASTDFS 自建的FASTDFS OTHER 其他第三方的存储
	 * 
	 */
	public void setStoretype(String storetype) {
		this.storetype = storetype;
	}

	public String getPassword() {
		return password;
	}

	public void setPassword(String password) {
		this.password = password;
	}

	@Override
	protected Serializable pkVal() {
		return this.accountid;
	}

	@Override
	public String toString() {
		return ReflectionToStringBuilder.toString(this);
	}
}
